Лабораторная работа №1

Работа с git

Астраханцева А. А.

Российский университет дружбы народов, Москва, Россия

22 февраля 2025

Информация

Докладчик

Вводная часть

Цели лабораторной работы

Приобретение навыков работы с git и markdown.

Выполнение ЛР

Подготовка

Параметры установки окончаний строк

Создание проекта

mkdir hello
cd hello
touch hello.html
echo "Hello, World!" > hello.html

Создание проекта

git init
git add hello.html
git commit -m "Initial Commit"
git status

Создание проекта

Создание файла, репозитория и добавление файлов в репозиторий

Внесение изменений

<h1>Hello, World!</h1>

Проверим состояние рабочего каталога.

git status
git add hello.html
git status

Внесение изменений

Изменение файла, создание комита

Создание коммита

git commit
git status

Изменим файл hello.html

<html>
<body>
<h1>Hello, World!</h1>
</body>
</html>
git add hello.html

Изменение файл hello.html

<html>
<head>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
git status

Просмотр состояния

Изменение файла и создание коммита

Просмотр истории

Просмотр истории

Просмотр истории

Варианты просмотра лога

Возврат к определенной версии репозитория

Возвращение к версии репозитория используя хэш

Создание тэгов и переключение по ним

Создание тэгов и переключение по ним

Создание тэгов и переключение по ним

Переключение по тэгам

Создание тэгов в логе

Имена тэгов в логе

Изменение файл hello.html

<html>
<head>
</head>
<body>
<h1>Hello, World!</h1>
<!-- This is a bad comment. We want to revert it. -->
</body>
</html>

Проверим состояние рабочего каталога:

git status
git checkout hello.html
git status
cat hello.html

Изменение файл hello.html

<html>
<head>
<!-- This is an unwanted but staged comment -->
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>

Индексация и отмена индексации

git add hello.html
git status
git reset HEAD hello.html

Индексация и отмена индексации

Отмена индексации файла

Переключимся на версию коммита:

git checkout hello.html
git status

Изменение файл hello.html

<html>
<head>
</head>
<body>
<h1>Hello, World!</h1>
<!-- This is an unwanted but committed change -->
</body>
</html>

Отмена коммита

git add hello.html
git commit -m "Oops, we didn't want this commit"
git revert HEAD

Отмена коммита

Отмена коммитов

Удаление коммитов из ветки

git log
git tag oops
git reset --hard v1
git log

Удаление коммитов из ветки

Удаление коммитов

Удаление тега

git tag -d oops
git log --all

Удаление тега

Удаление тэга

Внесение изменений в коммиты

git add hello.html
git commit --amend -m "Add an author/email comment"

Внесение изменений в коммиты

Изменение коммита

Перемещение файлов

mkdir lib
git mv hello.html lib
git status
git commit -m "Moved hello.html to lib"

Добавление файла index.html в репозиторий

<html>
<body>
<iframe src="lib/hello.html" width="200" height="200" />
</body>
</html>

Перемещение файлов

Перемещение файла средствами git

Git внутри: Каталог .git

Структура git

Работа непосредственно с объектами git

Содержание git/HEAD

Работа непосредственно с объектами git

Работа с объектами git

Работа непосредственно с объектами git

Работа с объектами git

Создание ветки

Создание ветки, редактирование файлов

Просмотр лога

Просмотр лога

Создание отличий в ветках

Создание отличий в ветках

Просмотр графа

Просмотр графа

Слияние

Просмотр графа

Сброс ветки

Сброс ветки

Перебазирование

Перебазирование

Клонирование репозиториев

Клонирование репозитория

Просмотр истории репозитория

История репозитория

Что такое origin?

Origin

Извлечение изменений

Извлечение изменений

. Слияние извлеченных изменений

Различные команды git
  1. Отправка изменений
Различные команды git

Выводы

В ходе выполнения лабораторной работы я приобрела навыки работы с git и markdown.

Спасибо за внимание!